﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace PlanInterfejs
{
    public partial class PrzedmiotyControl : UserControl
    {
        PlanView _view;

        public PlanView View
        {
            get { return _view; }
            set { _view = value; }
        }
        public PrzedmiotyControl()
        {
            InitializeComponent();
        }

        void UpdateLbPrzedmioty()
        {
            var przedmiotTypies = GetPrzedmiotTypes();
            lbPrzedmioty.DataSource = przedmiotTypies;
            lbPrzedmioty.DisplayMember = "Nazwa";
        }
        private void PrzedmiotyControl_Load(object sender, EventArgs e)
        {
           
        }

        private void btnDodaj_Click(object sender, EventArgs e)
        {
            string nazwa = tbNazwa.Text;
            AddPrzedmiot(nazwa);
            lbPrzedmioty.SelectedIndex = lbPrzedmioty.Items.Count - 1;
        }
        
        private void btnUsun_Click(object sender, EventArgs e)
        {
            DAL.database.DeleteObject((Przedmiot_Typy)lbPrzedmioty.SelectedItem);
            DAL.database.SaveChanges();            
        }

        private void AddPrzedmiot(string nazwa)
        {
            Przedmiot_Typy nowyPrzedmiot = new Przedmiot_Typy();
            nowyPrzedmiot.Nazwa = nazwa;
            DAL.database.AddToPrzedmiot_Typy(nowyPrzedmiot);
            DAL.database.SaveChanges();
            UpdateLbPrzedmioty();
        }
        private IQueryable<Przedmiot_Typy> GetPrzedmiotTypes()
        {
            IQueryable<Przedmiot_Typy> przedmiotTypies;
            przedmiotTypies = DAL.database.Przedmiot_Typy.Select(p => p);
            return przedmiotTypies;
        }

        private void PrzedmiotyControl_VisibleChanged(object sender, EventArgs e)
        {
            UpdateLbPrzedmioty();
        }

        private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {

        }

    }
}
